/**
 * Created by sjg on 17/4/3.
 */
var express = require('express');
var router = express.Router();
var CONFIG = require('../../../../common/config');
var CODE = require('../../../../common/code');

var usersUtil = require('../../util/usersUtil.js');
var checkUtil = require('../../util/checkUtil');
var printUtil = require('../../util/printUtil');
var moment = require('moment');

//------------------------------------------------------------------
/**
 * 添加用户地址
 *
 * 参数: device	"0 表示从pc来的请求
 * 1 标识一键生成iOS端
 * 2 标识一键生成android端
 * 3  标识一键生成 app 嵌入网页
 * 4 标识一键生成 web 端
 * 5 标识一键生成微信端
 *
 * 101 表示pc美化大师/102表示pc wps/103表示wps android/104表示wps ios
 * 201 标识利楚商务
 * 301 标识酒单网"
 * 参数: userId	 用户唯一标识
 * 参数[可选]: addressInfo	"{
 *            “mobile”:1887220261,// 手机号
 *            “name”:”呵呵哒",// 姓名
 *            "prov":{
 *                “id”:358,
 *                “text”:”湖北省”
 *            },
 *            "city":{
 *                "id":960,
 *                "text":"武汉市"
 *            },
 *            "dist":{
 *                "id":923,
 *               "text":"洪山区"
 *             },
 *            “detail”:”光谷创业街10栋"// 地址详情
 *   }"
 * 返回结果	{"success":1,"msg":"成功","data":{"addressId" : 889}}
 * 注意	"addressInfo 参数为可选, 若不传递则创建默认地址
 * addressInfo 若传递则需保持此结构正确"
 * */
// 测试地址: http://localhost:3000/tp/v1/users/addAddress
function addAddress(req, res, next) {

    //var obj = {"addressId" : 889};
    //return usersUtil.ret_func_json(1, '成功', obj, res);

    var device = checkUtil.stringFromReq(req, 'device');
    if(!device) {
        return printUtil.ret_func_json(0,CODE.DEVICE_EMPTY,{},res);
    }
    var userId = checkUtil.numberFromReq(req, 'userId');
    if(!userId) {
        return printUtil.ret_func_json(0,CODE.USER_ID_EMPTY,{},res);
    }
    var addressInfo = checkUtil.stringFromReq(req, 'addressInfo');

    var address = {
        "mobile":null,
        "name":null,
        "prov":{
            "id":100000,
            "text":null
        },
        "city":{
            "id":100100,
            "text":null
        },
        "dist":{
            "id":100101,
            "text":null
        },
        "detail":null
    };
    if(addressInfo) {
        address = JSON.parse(addressInfo);
    }

    // 新建地址
    printUtil.addAddress(userId, address, function(error, id){
        if(error){
            console.log(error);
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }
        if(!id){
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }

        return printUtil.ret_func_json(1,CODE.OPERATION_SUCCESS,{addressId:id},res);
    });
}
router.get('/addAddress', addAddress);
router.post('/addAddress', addAddress);

//------------------------------------------------------------------
/**
 * 获取用户地址信息
 *
 * 参数: device
 * 参数: userId     用户唯一标识
 * 参数: addressId  用户地址 id
 *
 * 原接口: /print/getAddressInfo
 * 测试地址: http://localhost:3000/tp/v1/users/getAddressInfo
 * */
function getAddressInfo(req, res, next) {

    //var obj = {"addressId" : 889};
    //return usersUtil.ret_func_json(1, '成功', obj, res);

    var device = checkUtil.stringFromReq(req, 'device');
    if(!device) {
        return printUtil.ret_func_json(0,CODE.DEVICE_EMPTY,{},res);
    }
    var userId = checkUtil.numberFromReq(req, 'userId');
    if(!userId) {
        return printUtil.ret_func_json(0,CODE.USER_ID_EMPTY,{},res);
    }
    var addressId = checkUtil.numberFromReq(req, 'addressId');
    if(!addressId) {
        return printUtil.ret_func_json(0,CODE.ADDRESS_ID_EMPTY,{},res);
    }

    // 获取地址
    printUtil.getAddressInfo(addressId,  function(error,address){
        if(error){
            console.log(error);
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }
        if(!address){
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }

        return printUtil.ret_func_json(1,CODE.OPERATION_SUCCESS,{addressInfo:address},res);
    });
}
router.get('/getAddressInfo', getAddressInfo);
router.post('/getAddressInfo', getAddressInfo);

//------------------------------------------------------------------
/**
 * 修改用户地址
 *
 * 参数: device	"0 表示从pc来的请求
 * 1 标识一键生成iOS端
 * 2 标识一键生成android端
 * 3  标识一键生成 app 嵌入网页
 * 4 标识一键生成 web 端
 * 5 标识一键生成微信端
 *
 * 101 表示pc美化大师/102表示pc wps/103表示wps android/104表示wps ios
 * 201 标识利楚商务
 * 301 标识酒单网"
 * 参数: userId	 用户唯一标识
 * 参数: addressId	 用户地址 id
 * 参数: addressInfo	"{
 *            “mobile”:1887220261,// 手机号
 *            “name”:”呵呵哒",// 姓名
 *            "prov":{
 *                “id”:358,
 *                “text”:”湖北省”
 *            },
 *            "city":{
 *                "id":960,
 *                "text":"武汉市"
 *            },
 *            "dist":{
 *                "id":923,
 *                "text":"洪山区"
 *            },
 *           “detail”:”光谷创业街10栋"// 地址详情
 * }"
 *
 * */
// 测试地址: http://localhost:3000/tp/v1/users/modifyAddress
function modifyAddress(req, res, next) {
    //var obj = {"addressId" : 889};
    //return usersUtil.ret_func_json(1, '成功', obj, res);

    var device = checkUtil.stringFromReq(req, 'device');
    if(!device) {
        return printUtil.ret_func_json(0,CODE.DEVICE_EMPTY,{},res);
    }
    var userId = checkUtil.numberFromReq(req, 'userId');
    if(!userId) {
        return printUtil.ret_func_json(0,CODE.USER_ID_EMPTY,{},res);
    }
    var addressId = checkUtil.numberFromReq(req, 'addressId');
    if(!addressId) {
        return printUtil.ret_func_json(0,CODE.ADDRESS_ID_EMPTY,{},res);
    }
    var addressInfo = checkUtil.stringFromReq(req, 'addressInfo');
    if(!addressInfo) {
        return printUtil.ret_func_json(0,CODE.ADDRESS_EMPTY,{},res);
    }
    var address = JSON.parse(addressInfo);

    // 更新地址
    printUtil.updateAddress(addressId, address, function(error, id){
        if(error){
            console.log(error);
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }
        if(!id){
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }

        return printUtil.ret_func_json(1,CODE.OPERATION_SUCCESS,{addressId:id},res);
    });
}
router.get('/modifyAddress', modifyAddress);
router.post('/modifyAddress', modifyAddress);

//---------------------------------------------------------------
/**
 * 微信登录接口, 若返回字段存在 mobile 则认为登录成功, 否则跳转至绑定手机号界面
 * 参数: device	"0 表示从pc来的请求
 * 1 标识一键生成iOS端
 * 2 标识一键生成android端
 * 3  标识一键生成 app 嵌入网页
 * 4 标识一键生成 web 端
 * 5 标识一键生成微信端
 *
 * 101 表示pc美化大师/102表示pc wps/103表示wps android/104表示wps ios
 * 201 标识利楚商务
 * 301 标识酒单网"
 * 参数: wxUnionId	微信 unionId
 *
 * 原接口: /users/findMobileUserByWechatForWeb
 * 测试地址: http://localhost:3000/tp/v1/users/findMobileUserByWechatForWeb
 * */
function findMobileUserByWechatForWeb(req, res, next) {
    //var obj = {"head_url":"http://itbour-user.oss-cn-hangzhou.aliyuncs.com/image/U1055/2016/10/283/155523134_gcb9j4mxfBidTJmlkYMI","nickname":"呵呵哒","reg_uuid":"B549E141-38A6-42C6-85FD-AFD68CC81A05","sign":"","user_id":1055,"user_type":1,"wxuid":"oi9hmuFowWtUDGHePAqOZyUP2fy4","wxunm":"呵呵哒","unionid":"oi9hmuFowWtUDGHePAqOZyUP2fy4","mobile":"18872202619"};
    //return usersUtil.ret_func_json(1, '成功', obj, res);

    var device = req.body.device || req.query.device;
    var wxUnionId = req.body.wxUnionId || req.query.wxUnionId || '';

    // check parameters
    if(typeof wxUnionId == 'undefined' || wxUnionId == null || wxUnionId.trim().length == 0) {
        return usersUtil.ret_func_json(0,"无效微信UnionID",{},res);
    }

    // 根据微信unionID查找用户
    usersUtil.get_mobileUserByWxUnionId(wxUnionId, function(error, user_item){
        if(error){
            console.log(error);
            return usersUtil.ret_func_json(0, CODE.OPERATION_FAILED,{},res);
        }
        // 找不到用户，则返回空对象
        if(user_item==null ){
            return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS,{},res);
        }else{
            // 找到用户，但是手机号为空，则返回空对象
            if(user_item.mobile==null ){
                return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS,{},res);// 没有数据时，或者没有手机号时，返回空对象
            }else{
                // 找到用户，且有手机号为空，且有openID活着unionID，则返回用户信息
                var retData = usersUtil.retDataWithITBUserModel(user_item);
                return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS, retData, res);
            }
        }
    });
}
router.get('/findMobileUserByWechatForWeb', findMobileUserByWechatForWeb);
router.post('/findMobileUserByWechatForWeb', findMobileUserByWechatForWeb);
//------------------------------------------------------------------
/**
 * 微信绑定手机号
 *
 * 参数: device	"0 表示从pc来的请求
 * 1 标识一键生成iOS端
 * 2 标识一键生成android端
 * 3  标识一键生成 app 嵌入网页
 * 4 标识一键生成 web 端
 * 5 标识一键生成微信端
 *
 * 101 表示pc美化大师/102表示pc wps/103表示wps android/104表示wps ios
 * 201 标识利楚商务
 * 301 标识酒单网"
 * 参数: wxHeader	 微信头像地址
 * 参数: wxUnionId	 微信 union id
 * 参数: wxNickName	 微信 昵称
 * 参数: mobile	手机号
 * 参数: uuid	设备唯一标识
 *
 * 原接口: /users/loginByWechatAndMobileBeforeV4ForWeb
 * 测试地址: http://localhost:3000/tp/v1/users/wechatBindMobile
 * */
function wechatBindMobile(req, res, next){

    //var obj = {"head_url":"http://itbour-user.oss-cn-hangzhou.aliyuncs.com/image/U1055/2016/10/283/155523134_gcb9j4mxfBidTJmlkYMI","nickname":"呵呵哒","reg_uuid":"B549E141-38A6-42C6-85FD-AFD68CC81A05","sign":"","user_id":1055,"user_type":1,"wxuid":"oi9hmuFowWtUDGHePAqOZyUP2fy4","wxunm":"呵呵哒","unionid":"oi9hmuFowWtUDGHePAqOZyUP2fy4","mobile":"18872202619"};
    //return usersUtil.ret_func_json(1, '成功', obj, res);

    var device = req.body.device || req.query.device;
    var wxUnionId = req.body.wxUnionId || req.query.wxUnionId || '';
    var wxHeader = req.body.wxHeader || req.query.wxHeader || '';
    var wxNickName = req.body.wxNickName || req.query.wxNickName || '';
    var mobile = req.body.mobile || req.query.mobile || '';
    var uuid = req.body.uuid || req.query.uuid || '';

    // check parameters
    if (typeof wxUnionId == 'undefined' || wxUnionId == null || wxUnionId.trim().length == 0) {
        return usersUtil.ret_func_json(0, "无效微信UnionID", {}, res);
    }
    if (typeof wxHeader == 'undefined' || wxHeader == null || wxHeader.trim().length == 0) {
        return usersUtil.ret_func_json(0, "无效微信头像", {}, res);
    }
    if (typeof wxNickName == 'undefined' || wxNickName == null || wxNickName.trim().length == 0) {
        return usersUtil.ret_func_json(0, "无效微信昵称", {}, res);
    }
    if (typeof mobile == 'undefined' || mobile == null || mobile.trim().length == 0) {
        return usersUtil.ret_func_json(0, "无效微信手机", {}, res);
    }

    if (typeof uuid == 'undefined' || uuid == null || uuid.trim().length == 0) {
        return usersUtil.ret_func_json(0, "无效uuid", {}, res);
    }

    /*
     用户账户存在于5种情况：
     1、手机号                   [旧App、新App、网站]
     2、OpenID                  [旧App]
     3、手机号＋OpenID           [旧App]
     4、UnionID＋OpenID＋手机号  [新App]
     5、UnionID＋手机号          [新网站]
     * */

    // 手机号对应的用户纪录U存在？
    usersUtil.get_mobileUserByMobile(mobile, function(error, user_item){
        if(error){
            console.log(error);
            return usersUtil.ret_func_json(0, CODE.OPERATION_FAILED,{},res);
        }
        if(user_item!=null){
            // 使用旧用户信息＋微信信息 进行登录的流程
            usersUtil.wxLoginWithExistMobileUserForWeb(wxUnionId,wxHeader,wxNickName,uuid,user_item, function(error, user_item){
                if(error) {
                    console.log("users.js wxLoginWithExistMobileUserForWeb: " + error);
                    return usersUtil.ret_func_json(0, CODE.OPERATION_FAILED, null, res);
                }
                var retData = usersUtil.retDataWithITBUserModel(user_item);
                return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS, retData, res);
            });

        }else{
            // 使用新手机号＋微信信息 进行登录的流程
            usersUtil.wxLoginWithoutExistMobileUserForWeb(wxUnionId,wxHeader,wxNickName,uuid,mobile,function(error, user_item){
                if(error) {
                    console.log("users.js  wxLoginWithoutExistMobileUserForWeb: " + error);
                    return usersUtil.ret_func_json(0, CODE.OPERATION_FAILED, null, res);
                }
                var retData = usersUtil.retDataWithITBUserModel(user_item);
                return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS, retData, res);
            });
        }
    });
}
router.get('/wechatBindMobile', wechatBindMobile);
router.post('/wechatBindMobile', wechatBindMobile);


//------------------ 微信端获取我的优惠券 ------------------------------------
/** 获取用户优惠券列表
 * 参数:device	"0 表示从pc来的请求
 * 1 表示ios
 * 2 表示android
 * 101 表示pc美化大师/102表示pc wps/103表示wps android/104表示wps ios
 * 3 标识app 嵌入网页
 * 4 标识网站 web 端"
 * 参数: uuid	 设备唯一标识
 * 参数: userId	用户唯一标识
 * 参数: valid	0, 获取失效优惠券, 1, 获取有效优惠券
 * 参数: pageNum	请求页页码, 从0开始
 * 参数: pageSize	请求页大小
 * 返回值:
 {
    "success":1,
    "msg":"成功",
    "data":{
        "coupons":[
            {
                "id":986, // 优惠券唯一标识
                "code":"QWERTPOIUYEV", // 优惠券兑换码, 也可作唯一标识
                "type_desc":"抵扣券", // 优惠券类型描述, 抵扣券, 折扣券, 满减
                "discount_desc":"5.0元",// 优惠券额度, 5元 8折
                "trade_type":20, // 优惠券类型, 10商品订单(印品)，30购买模版(设计)
                "expiry_time":"2017-03-05", // 优惠券过期时间
                "coupon_desc":"暂不抵扣运费", // 优惠券说明, 不抵扣运费, 满10减1
                "reason":"" // 优惠券失效原因, 未失效则为空字符串
            }
        ]
    }
 }
 *
 * 测试地址: http://localhost:3000/tp/v1/users/getUserCoupons?device=1&userId=128685&valid=1&pageNum=0&pageSize=10
 * */
function getUserCoupons (req, res, next) {
    var device = checkUtil.numberFromReq(req, 'device');
    var uuid = checkUtil.stringFromReq(req, 'uuid');
    var userId = checkUtil.numberFromReq(req, 'userId');
    var pageNum = checkUtil.numberFromReq(req, 'pageNum');
    var pageSize = checkUtil.numberFromReq(req, 'pageSize');
    var valid = checkUtil.numberFromReq(req, 'valid');// 默认0
    if(userId == 0) {
        return ret_func(0, '用户 id 非法', {}, res);
    }
    if(pageSize == 0) {
        pageSize = 12;// 默认值
    }

    printUtil.getUserCoupons_v5_2(userId, valid, pageNum, pageSize, function (error, data) {
        if (error) {
            console.log('v5/users.js getUserCoupons_v5_2 Err: '+error);
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }

        return printUtil.ret_func_json(1,CODE.OPERATION_SUCCESS, {coupons:data||[]}, res);
    });
}
router.get('/getUserCoupons', getUserCoupons);
router.post('/getUserCoupons', getUserCoupons);


//-----------------------------微信端兑换优惠券----------------------------------
/** 兑换优惠券
 * 参数:device	"0 表示从pc来的请求
 * 1 表示ios
 * 2 表示android
 * 101 表示pc美化大师/102表示pc wps/103表示wps android/104表示wps ios
 * 3 标识app 嵌入网页
 * 4 标识网站 web 端"
 * 参数: uuid	 设备唯一标识
 * 参数: userId	用户唯一标识
 * 参数: code	 兑换码
 *
 * 返回值:
 {
    "success":1,
    "msg":"成功",
    "data":{
            "id":986, // 优惠券唯一标识
            "code":"QWERTPOIUYEV", // 优惠券兑换码, 也可作唯一标识
            "type_desc":"抵扣券", // 优惠券类型描述, 抵扣券, 折扣券, 满减
            "discount_desc":"5.0元",// 优惠券额度, 5元 8折
            "trade_type":10, // 优惠券类型, 10商品订单(印品)，30购买模版(设计)
            "expiry_time":"2017-03-05", // 优惠券过期时间
            "coupon_desc":"暂不抵扣运费", // 优惠券说明, 不抵扣运费, 满10减1
            "reason":"" // 优惠券失效原因, 未失效则为空字符串
    }
 }
 * 测试地址: http://localhost:3000/tp/v1/users/getCouponByCode?device=1&userId=128685&code=qwert
 * */
function getCouponByCode(req, res, next) {
    var device = checkUtil.numberFromReq(req, 'device');
    var uuid = checkUtil.stringFromReq(req, 'uuid');
    var userId = checkUtil.numberFromReq(req, 'userId');
    var code = checkUtil.stringFromReq(req, 'code');
    if(userId == 0) {
        return ret_func(0, '用户 id 非法', {}, res);
    }
    if(!code || code.length==0) {
        return ret_func(0, 'code 错误', {}, res);
    }

    printUtil.getCouponByCode_v5_2(userId, code, function (error, data) {
        if (error) {
            console.log('v5/users.js getCouponByCode_v5_2 Err: '+error);
            return printUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }

        if(data.reason && data.reason.length) {
            // 注意: 兑换结束调用了: printUtil.genCouponRetInfo 组织数据, 由于个人中心页面返回错误原因最多三个字, 所以此处重新组织
            var reason = data.reason;
            if(reason == '已过期') {
                reason = "优惠码已过期";
            } else if (reason == '已兑换') {
                reason = '优惠码已使用';
            } else if (reason == '使用中') {
                reason = '优惠码已使用';
            } else if (reason == '已使用') {
                reason = '优惠码已使用';
            }
            return printUtil.ret_func_json(0,reason,{},res);
        }
        return printUtil.ret_func_json(1,CODE.OPERATION_SUCCESS, data, res);
    });
}
router.get('/getCouponByCode', getCouponByCode);
router.post('/getCouponByCode', getCouponByCode);


//------------------------------------------------------------------
/* 获取用户作品列表
 * 方式:POST
 * 参数 device: 0:PC, 1:iOS, 2:android
 * 参数 uuid: 设备标识符
 * 参数 userId: 用户唯一标识
 * 参数 typeL: 0 未分类(返回所有); 1 海报; 2 多页; 3 ppt; 4 印品
 * 参数 pageNum: 请求页号(0开始 )
 * 参数 pageSize: 请求页大小
 * 参数 withTotalPage[可选] 0, 标示不获取总页数, 1 标识获取总页数
 {
 "success":1,
 "msg":"成功",
 "data":{
 "list":[
 {
 "id":989,
 "thumb":"http://oss-itbour.com-osss",
 "title":"作品名称",
 "typeL":1,
 "time":"2016-12-15 15:30"
 },
 {
 "id":989,
 "thumb":"http://oss-itbour.com-osss",
 "title":"作品名称",
 "typeL":1,
 "time":"2016-12-15 15:30"
 }
 ]
 }
 }
 测试地址: http://localhost:3000/tp/v1/users/getUserDocs?device=1&userId=128685&typeL=0&pageNum=0&pageSize=10&uuid=1&withTotalPage=1
 * */
function getUserDocs(req, res, next) {
    var device = checkUtil.stringFromReq(req, 'device');
    if(!device) {
        return usersUtil.ret_func_json(0,CODE.DEVICE_EMPTY,{},res);
    }
    var userId = checkUtil.numberFromReq(req, 'userId');
    if(!userId) {
        return usersUtil.ret_func_json(0,CODE.USER_ID_EMPTY,{},res);
    }
    var typeL = checkUtil.numberFromReq(req, 'typeL');
    var pageNum = checkUtil.numberFromReq(req, 'pageNum') || 0;
    var pageSize = checkUtil.numberFromReq(req, 'pageSize') || 0;
    var withTotalPage = checkUtil.numberFromReq(req, 'withTotalPage');

    // 根据大分类查找用户文档
    usersUtil.get_UserDocs(userId, typeL, pageNum, pageSize, function(error, result){
        if(error){
            console.log(error);
            return usersUtil.ret_func_json(0, CODE.OPERATION_FAILED,{},res);
        }

        var retData =[];
        if(result && result.length>0) {
            for (var i = 0; i < result.length; i++) {
                retData.push({
                    id: result[i].doc_id,
                    thumb: result[i].thumb || '',
                    title: result[i].doc_name || '',
                    typeL: result[i].top_type || 0,
                    time: (new moment(result[i].create_time)).format('YYYY-MM-DD HH:mm'),
                });
            }
        }

        var data = {list:retData, currentPage : pageNum};
        // 获取总页数
        if(withTotalPage) {
            usersUtil.get_UserDocsCnt(userId, typeL, pageNum, pageSize, function(error1, count){
                if(error){
                    console.log(error);
                    return usersUtil.ret_func_json(0, CODE.OPERATION_FAILED,{},res);
                }
                var totalPage = Math.floor((count-1)/pageSize)+1;
                data.totalPage = totalPage;
                return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS, data, res);
            });
        } else {
            return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS, data, res);
        }

    });

}
router.get('/getUserDocs', getUserDocs);
router.post('/getUserDocs', getUserDocs);

//------------------------------------------------------------------
/* 重命名作品名称
 * 方式:POST
 * 参数 device: 0:PC, 1:iOS, 2:android
 * 参数 uuid: 设备标识符
 * 参数 userId: 用户唯一标识
 * 参数 typeL: 0 未分类(错误); 1 海报; 2 多页; 3 ppt; 4 印品
 * 参数 id: 文档id
 * 参数 name: 文档名
 {
 "success":1,
 "msg":"成功",
 "data":{}
 }
 * */
function renameDoc(req, res, next) {
    var device = checkUtil.stringFromReq(req, 'device');
    if(!device) {
        return usersUtil.ret_func_json(0,CODE.DEVICE_EMPTY,{},res);
    }
    var userId = checkUtil.numberFromReq(req, 'userId');
    if(!userId) {
        return usersUtil.ret_func_json(0,CODE.USER_ID_EMPTY,{},res);
    }
    var typeL = checkUtil.numberFromReq(req, 'typeL') || 0;
    if(typeL!=1 && typeL!=2 && typeL!=3 && typeL!=4 && typeL!=6) {
        return usersUtil.ret_func_json(0,'无效分类',{},res);
    }
    var docId = checkUtil.numberFromReq(req, 'id');
    if(!docId) {
        return usersUtil.ret_func_json(0,'文档ID为空',{},res);
    }
    var docName = checkUtil.stringFromReq(req, 'name')||'';

    // 重命名用户文档
    usersUtil.renameUserDoc(userId, typeL, docId, docName, function(error, result){
        if(error){
            console.log(error);
            return usersUtil.ret_func_json(0, CODE.OPERATION_FAILED,{},res);
        }

        return usersUtil.ret_func_json(1, CODE.OPERATION_SUCCESS,{},res);
    });
}
router.get('/renameDoc', renameDoc);
router.post('/renameDoc', renameDoc);

//------------------------------------------------------------------
/* 删除用户作品
 * 方式: GET
 * 参数: device	0表示从pc来的请求1表示ios/2表示android/101表示pc美化大师/102表示pc wps/103表示wps android/104表示wps ios
 * 参数: uuid	 设备唯一标识
 * 参数: userId	用户唯一标识
 * 参数: typeL	0 未分类(错误) 1 海报  2 多页  3 ppt.  4. 印品
 * 参数: id	 作品 id
 * 返回结果	{"success":1,"msg":"成功","data":{}}
 * 测试地址：http://localhost:3000/tp/v1/users/removeDoc?device=1&uuid=2&userId=13&id=48223&typeL=3
 * */
function removeDoc(req, res, next) {

    var device = checkUtil.stringFromReq(req, 'device');
    if(!device) {
        return usersUtil.ret_func_json(0,CODE.DEVICE_EMPTY,{},res);
    }
    var userId = checkUtil.numberFromReq(req, 'userId');
    if(!userId) {
        return usersUtil.ret_func_json(0,CODE.USER_ID_EMPTY,{},res);
    }
    var typeL = checkUtil.numberFromReq(req, 'typeL');
    if(!typeL) {
        return usersUtil.ret_func_json(0,CODE.TYPE_L_EMPTY,{},res);
    }
    var id = checkUtil.numberFromReq(req, 'id');
    if(!id) {
        return usersUtil.ret_func_json(0,CODE.DOC_ID_EMPTY,{},res);
    }

    usersUtil.removeDoc(userId, typeL,id, function(error){
        if(error){
            console.log(error);
            return usersUtil.ret_func_json(0,CODE.OPERATION_FAILED,{},res);
        }
        return usersUtil.ret_func_json(1,CODE.OPERATION_SUCCESS,{},res);
    });
}
router.post('/removeDoc', removeDoc);
router.get('/removeDoc', removeDoc);

//------------------------------------------------------------------
module.exports = router;